hvm: Cannot use ring_3() macro on HVM guests. It does not work because
authorKeir Fraser <keir.fraser@citrix.com>
Thu, 27 Dec 2007 10:41:43 +0000 (10:41 +0000)
committerKeir Fraser <keir.fraser@citrix.com>
Thu, 27 Dec 2007 10:41:43 +0000 (10:41 +0000)
commit3658ceb342ae70e307509ad7554b24e8d9cd2571
treebcef3daed10a522ddde763c8d86aeb22c56a1e12
parentd22f3583407347c84e88fd81351e74f04e9c1743
hvm: Cannot use ring_3() macro on HVM guests. It does not work because
the CS field is not saved/restored and also because CS.RPL does not
always equal the DPL (e.g., when executing in real mode).

Instead we must interrogate SS.DPL, or CPL directly (SVM supports this).

Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
xen/arch/x86/hvm/hvm.c
xen/arch/x86/hvm/instrlen.c
xen/arch/x86/hvm/platform.c
xen/arch/x86/hvm/svm/svm.c
xen/arch/x86/hvm/vmx/vmx.c
xen/arch/x86/mm/shadow/common.c
xen/arch/x86/mm/shadow/multi.c
xen/arch/x86/mm/shadow/private.h